home *** CD-ROM | disk | FTP | other *** search
/ Programmer Plus 2007 / Programmer-Plus-2007.iso / Programming / XML Utilities / Professional Programmer XSL IDE / Xselerator25.msi / Data.Cab / F31100_testmonteCarlo1000.xsl < prev    next >
Encoding:
Extensible Markup Language  |  2002-04-01  |  3.0 KB  |  93 lines

  1. <xsl:stylesheet version="1.0" 
  2.  xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
  3.  xmlns:x="f:fxsl-test-monteCarlo"
  4.  xmlns:mySampleFun1="f:mySampleFun1"
  5.  xmlns:mySampleFun2="f:mySampleFun2"
  6.  xmlns:mySampleFun3="f:mySampleFun3"
  7.  exclude-result-prefixes="xsl mySampleFun1"
  8.  >
  9.  
  10.   <xsl:import href="monteCarlo.xsl"/>
  11.   
  12.   <xsl:output method="text"/>
  13.   
  14.   <mySampleFun1:mySampleFun1/>
  15.   <mySampleFun2:mySampleFun2/>
  16.   <mySampleFun3:mySampleFun3/>
  17.  
  18.   <xsl:variable name="x:st" 
  19.                 select="document('')/*"/>
  20.  
  21.   <xsl:template match="/">
  22.     <xsl:variable name="vSampleFun1" 
  23.                   select="$x:st/mySampleFun1:*[1]"/>
  24.     <xsl:variable name="vSampleFun2" 
  25.                   select="$x:st/mySampleFun2:*[1]"/>
  26.     <xsl:variable name="vSampleFun3" 
  27.                   select="$x:st/mySampleFun3:*[1]"/>
  28.     
  29.     <xsl:call-template name="monteCarlo">
  30.       <xsl:with-param name="arg1" select="1000"/>
  31.       <xsl:with-param name="arg2" 
  32.                       select="$vSampleFun1"/>
  33.       <xsl:with-param name="arg3" 
  34.                       select="'0'"/> <!-- sx -->
  35.       <xsl:with-param name="arg4" 
  36.                       select="1"/>   <!-- tx -->
  37.       <xsl:with-param name="arg5" 
  38.                       select="'0'"/> <!-- sy -->
  39.       <xsl:with-param name="arg6" 
  40.                       select="4"/>   <!-- ty -->
  41.     </xsl:call-template>
  42.     <xsl:text> </xsl:text>
  43.     <xsl:call-template name="monteCarlo">
  44.       <xsl:with-param name="arg1" select="1000"/>
  45.       <xsl:with-param name="arg2" 
  46.                       select="$vSampleFun2"/>
  47.       <xsl:with-param name="arg3" 
  48.                       select="'0'"/> <!-- sx -->
  49.       <xsl:with-param name="arg4" 
  50.                       select="1"/>   <!-- tx -->
  51.       <xsl:with-param name="arg5" 
  52.                       select="'0'"/> <!-- sy -->
  53.       <xsl:with-param name="arg6" 
  54.                       select="1"/>   <!-- ty -->
  55.     </xsl:call-template>
  56.     <xsl:text> </xsl:text>
  57.     <xsl:call-template name="monteCarlo">
  58.       <xsl:with-param name="arg1" select="1000"/>
  59.       <xsl:with-param name="arg2" 
  60.                       select="$vSampleFun3"/>
  61.       <xsl:with-param name="arg3" 
  62.                       select="1"/> <!-- sx -->
  63.       <xsl:with-param name="arg4" 
  64.                       select="2"/>   <!-- tx -->
  65.       <xsl:with-param name="arg5" 
  66.                       select="'0'"/> <!-- sy -->
  67.       <xsl:with-param name="arg6" 
  68.                       select="1"/>   <!-- ty -->
  69.     </xsl:call-template>
  70.   </xsl:template>
  71.   
  72.   <!-- f x = 4 / (1 + x^2) -->
  73.   <xsl:template match="mySampleFun1:*"> 
  74.     <xsl:param name="arg1"/>
  75.     
  76.     <xsl:value-of select="4 
  77.                        div (1 + $arg1*$arg1)"/>
  78.   </xsl:template>
  79.  
  80.   <!-- f x = x -->
  81.   <xsl:template match="mySampleFun2:*"> 
  82.     <xsl:param name="arg1"/>
  83.     
  84.     <xsl:value-of select="$arg1"/>
  85.   </xsl:template>
  86.  
  87.   <!-- f x = 1 / x -->
  88.   <xsl:template match="mySampleFun3:*"> 
  89.     <xsl:param name="arg1"/>
  90.     
  91.     <xsl:value-of select="1 div $arg1"/>
  92.   </xsl:template>
  93. </xsl:stylesheet>